`hebrew-date', `islamic-date', `parasha', `omer', and `rosh-hodesh'. See the
documentation for the function `list-sexp-diary-entries' for more details.
Diary entries based on the Hebrew and/or the Islamic calendar are also
possible, but because these are somewhat slow, they are ignored
unless you set the `nongregorian-diary-listing-hook' and the
`nongregorian-diary-marking-hook' appropriately. See the documentation
for these functions for details.
Diary files can contain directives to include the contents of other files; for
details, see the documentation for the variable `list-diary-entries-hook'.")
(defvar diary-nonmarking-symbol "&" "\
*The symbol used to indicate that a diary entry is not to be marked in the
calendar window.")
(defvar hebrew-diary-entry-symbol "H" "\
*The symbol used to indicate that a diary entry is according to the
Hebrew calendar.")
(defvar islamic-diary-entry-symbol "I" "\
*The symbol used to indicate that a diary entry is according to the
Islamic calendar.")
(defvar diary-include-string "#include" "\
*The string used to indicate the inclusion of another file of diary entries
in diary-file. See the documentation for the function
`include-other-diary-files'.")
(defvar sexp-diary-entry-symbol "%%" "\
*The string used to indicate a sexp diary entry in diary-file.
See the documentation for the function `list-sexp-diary-entries'.")
(defvar abbreviated-calendar-year t "\
*Interpret a two-digit year DD in a diary entry as being either 19DD or
20DD, as appropriate, for the Gregorian calendar; similarly for the Hebrew and
Islamic calendars. If this variable is nil, years must be written in full.")
(defvar european-calendar-style nil "\
*Use the European style of dates in the diary and in any displays. If this
variable is t, a date 1/2/1990 would be interpreted as February 1, 1990.
The accepted European date styles are
DAY/MONTH
DAY/MONTH/YEAR
DAY MONTHNAME
DAY MONTHNAME YEAR
DAYNAME
Names can be capitalized or not, written in full, or abbreviated to three
characters with or without a period.")
(defvar american-date-diary-pattern '((month "/" day "[^/0-9]") (month "/" day "/" year "[^0-9]") (monthname " *" day "[^,0-9]") (monthname " *" day ", *" year "[^0-9]") (dayname "\\W")) "\
*List of pseudo-patterns describing the American patterns of date used.
See the documentation of diary-date-forms for an explanantion.")
(defvar european-date-diary-pattern '((day "/" month "[^/0-9]") (day "/" month "/" year "[^0-9]") (backup day " *" monthname "\\W+\\<[^*0-9]") (day " *" monthname " *" year "[^0-9]") (dayname "\\W")) "\
*List of pseudo-patterns describing the European patterns of date used.
See the documentation of diary-date-forms for an explanantion.")
Name of the buffer used for the optional fancy display of the diary.")
(fset 'increment-calendar-month '(macro . #[(mon yr n) "└┴┬├┼E╟»DC╔╩E╔╦EFç" [let macro-y + * yr 12 mon -1 n setq (1+ (% macro-y 12)) (/ macro-y 12)] 7 "\
Move the variables MON and YR to the month and year N months forward
if N is positive or backward if N is negative."]))
(fset 'calendar-for-loop '(macro . #[(var from init to final do &rest body) "└ ┬DDC─┼╞╚ ╔ DEED\n\"Eç" [let var 1- init append while >= final setq 1+ body] 10 "\
Execute a for loop."]))
(fset 'calendar-sum '(macro . #[(index initial condition expression) "└ \nD├D─╞╟╚╟ EE╞ ╩ DEF╟Fç" [let index initial (sum 0) while condition setq sum + expression 1+] 9 "\
For INDEX = INITIAL and successive integers, as long as CONDITION holds,
Generate the calendar window, offset from the current date by ARG months."])
(fset 'generate-calendar #[(month year) " S┬_\\├W½ä─┼!ê ╚ ê ┬_╔\\\\ë\n┬ªT\n┬Ñ)╦├TëY¡ƒ═ ╬_╧\\#ê ┬_\\ë\n┬ªT\n┬Ñ)¬W)ç" [month year 12 2 error "Months before February, 1 AD are not available." displayed-month displayed-year erase-buffer -2 macro-y -1 i generate-calendar-month 25 5] 6 "\
Generate a three-month Gregorian calendar centered around MONTH, YEAR."])
(fset 'generate-calendar-month #[(month year indent) "└ ┬E!┼Z╟ \"ebê╔╩╦╠ !#╬#ê╔╧╬#ê╔╨\"ê╤TëY½à╙cê¬q)╤TëY¡¿╩╘\"cê┼ª┼ªU½cU¼\\╔╨╤╬#½U╔╨\"ê¬M,ç" [calendar-day-of-week month 1 year first-day-of-month 7 first-saturday calendar-last-day-of-month last calendar-insert-indented format " %s %d" calendar-month-name indent t " S M Tu W Th F S" "" 0 i " " "%2d "] 5 "\
Produce a calendar for MONTH, YEAR on the Gregorian calendar.
The calendar is inserted in the buffer starting at the line on which point
is currently located, but indented INDENT spaces. The indentation is done
from the first character on the line and does not disturb the first INDENT
(fset 'describe-calendar-mode #[nil "└É┴┬├─┼!─╞!#!ê╟ æç" ["*Help*" princ format "Calendar Mode:\nFor a complete description, type %s\n%s\n" substitute-command-keys "\\<calendar-mode-map>\\[describe-mode] from within the calendar" "\\{calendar-mode-map}" print-help-return-message] 7 "\
Create a help buffer with a brief description of the calendar-mode." nil])
Reposition the calendar window so the current date is visible." nil])
(fset 'calendar-forward-month #[(arg) "└ ê┴ «â┬├!┼!╟!╔!ë\n╦_═\\\\\\ë╦ªT╦Ñ\n)╧\n\"ëW½ä)\nE╥!¼ç╙\n\"ê╘!-ç" [calendar-cursor-to-nearest-date calendar-cursor-to-date error "Cursor is not on a date!" cursor-date extract-calendar-month month extract-calendar-day day extract-calendar-year year 12 arg -1 macro-y calendar-last-day-of-month last new-cursor-date calendar-date-is-visible-p calendar-other-month calendar-cursor-to-visible-date] 5 "\
Extract the year part of DATE which has the form (month day year)."])
(fset 'calendar-gregorian-from-absolute #[(date) "┴Ñëë├╞╟ëTE!Y½ë╟\\T¬l*\\╟├ ╞ ╩ \"E!V½ï╟\\ T ¬d*T╞╟E!SZE,ç" [date 366 approx 0 sum y calendar-absolute-from-gregorian 1 year m calendar-last-day-of-month month day] 7 "\
Compute the list (month day year) corresponding to the absolute DATE.
The absolute date is the number of days elapsed since the (imaginary)
Gregorian date Sunday, December 31, 1 BC."])
(fset 'calendar-cursor-to-visible-date #[(date) "└ !┬ !├ !╟╚╔E!╩\\\\╦Ñ╠\\!ê═╬$T╤_╚ !╠_╥\\\\!+ç" [extract-calendar-month date extract-calendar-day extract-calendar-year year day month goto-line calendar-day-of-week 1 -1 7 3 move-to-column calendar-interval displayed-month displayed-year 25 6] 6 "\
Display a three-month calendar centered around MONTH and YEAR." (byte-code "└┬├─┼╞╟╚ ╩\"\"╩└$!╦ !\"A═╬╧╨!#+Dç" [t completion-ignore-case assoc capitalize completing-read "Month name: " mapcar list append calendar-month-name-array nil calendar-make-alist month calendar-read "Year (>0): " (lambda (x) (> x 0)) int-to-string current-year year] 9)])
(fset 'calendar-set-mark #[(arg) "└ «â┴┬!¼ÿBëGTV½ç¢╟íê╚╔!¬ö¼à┴╩!¬î╦@!êCñAë)ç" [calendar-cursor-to-date error "Cursor is not on a date!" date arg calendar-mark-ring mark-ring-max nil message "Mark set" "No mark set in this buffer" calendar-goto-date] 3 "\
Mark the date under the cursor, or jump to marked date.
With no prefix argument, push current date onto marked date ring.
With argument, jump to mark, pop it, and put point at end of ring." "P"])
(fset 'calendar-exchange-point-and-mark #[nil "@┴ «â┬├!ë¼à┬╞!¬êAB╟!*ç" [calendar-mark-ring calendar-cursor-to-date error "Cursor is not on a date!" date mark "No mark set in this buffer" calendar-goto-date] 4 "\
Exchange the current cursor position with the marked date." nil])
(fset 'calendar-count-days-region #[nil "└┴ «â┬├!!└@«â┬┼!!Zë╟V½ä¬â[T╚╔ë╩V½â╦¬ü╠#*ç" [calendar-absolute-from-gregorian calendar-cursor-to-date error "Cursor is not on a date!" calendar-mark-ring "No mark set in this buffer" days 0 message "Region has %d day%s (inclusive)" 1 "s" ""] 6 "\
Count the number of days (inclusive) between point and the mark." nil])
(fset 'calendar-not-implemented #[nil "└┴┬├ !\"ç" [error "%s not available in the calendar" global-key-binding this-command-keys] 4 "\
Returns the date of the Nth DAYNAME in MONTH, YEAR.
A DAYNAME of 0 means Sunday, 1 means Monday, and so on. If N<0, the
date returned is the Nth DAYNAME from the end of MONTH, YEAR (that is, -1 is
the last DAYNAME, -2 is the penultimate DAYNAME, and so on."])
(fset 'cursor-to-calendar-day-of-year #[nil "└ «â┴┬!─!╞!╞╚╔E!Z\n╦╠\në═U½â╬¬ü╧%,ç" [calendar-cursor-to-date error "Cursor is not on a date!" date extract-calendar-year year calendar-day-number day 12 31 days-remaining message "Day %d of %d; %d day%s remaining in the year" 1 "" "s"] 7 "\
Show the day number in the year and the number of days remaining in the
year for the date under the cursor." nil])
(fset 'calendar-absolute-from-iso #[(date) "└ !├ !┼ !╟╚╔╚ëE!╩\\\"\nS╦_╠U½â═¬éS\\\\+ç" [extract-calendar-month date week extract-calendar-day day extract-calendar-year year calendar-dayname-on-or-before 1 calendar-absolute-from-gregorian 3 7 0 6] 6 "\
The number of days elapsed between the Gregorian date 12/31/1 BC and
DATE. The `ISO year' corresponds approximately to the Gregorian year, but
weeks start on Monday and end on Sunday. The first week of the ISO year is
the first such week in which at least 4 days are in a year. The ISO
commercial DATE has the form (week day year) in which week is in the range
1..52 and day is in the range 0..6 (1 = Monday, 2 = Tuesday, ..., 0 =
Sunday). The The Gregorian date Sunday, December 31, 1 BC is imaginary."])
(fset 'calendar-iso-from-absolute #[(date) "└┴\n├Z!!ëë┼\n╚╔ëTE!Y½ì╔\\T¬g*\\\n\n╚╔ë\nE!Z╦ÑT\n╦ª\nE*ç" [extract-calendar-year calendar-gregorian-from-absolute date 3 approx 0 sum y calendar-absolute-from-iso 1 year 7] 7 "\
Compute the `ISO commercial date' corresponding to the absolute DATE.
The ISO year corresponds approximately to the Gregorian year, but weeks
start on Monday and end on Sunday. The first week of the ISO year is the
first such week in which at least 4 days are in a year. The ISO commercial
date has the form (week day year) in which week is in the range 1..52 and
day is in the range 0..6 (1 = Monday, 2 = Tuesday, ..., 0 = Sunday). The
absolute date is the number of days elapsed since the (imaginary) Gregorian
date Sunday, December 31, 1 BC."])
(fset 'cursor-to-iso-calendar-date #[nil "└ «â┴┬!─!┼ª╟─!!╔╩╦U½â┼¬é╠!═!$+ç" [calendar-cursor-to-date error "Cursor is not on a date!" greg-date calendar-absolute-from-gregorian 7 day calendar-iso-from-absolute iso-date message "ISO date: Day %s of week %d of %d." 0 extract-calendar-month extract-calendar-year] 6 "\
Show the equivalent date on the `ISO commercial calendar' for the date
under the cursor." nil])
(fset 'calendar-julian-from-absolute #[(date) "┴\\┬Ñëë─╟╚ëTE!Y½ï╚\\T¬i*\\ ╚─\n╟\në┴U½ï ╦ª─U½â╠¬à═\nSH E!V½ï╚\\\nT\n¬U*T╟╚ E!SZ E,ç" [date 2 366 approx 0 sum y calendar-absolute-from-julian 1 year m 4 29 [31 28 31 30 31 30 31 31 30 31 30 31] month day] 7 "\
Compute the Julian (month day year) corresponding to the absolute DATE.
The absolute date is the number of days elapsed since the (imaginary)
Gregorian date Sunday, December 31, 1 BC."])
(fset 'calendar-absolute-from-julian #[(date) "└ !┬ !├ !╟ !╚ª╔U½É╩ª╔U¼ë╦V½â╠¬ü╔S═_S╬Ñ╧\\\\\\\\+ç" [extract-calendar-month date extract-calendar-day extract-calendar-year year day month calendar-day-number 100 0 400 2 1 365 4 -2] 5 "\
The number of days elapsed between the Gregorian date 12/31/1 BC and DATE.
The Gregorian date Sunday, December 31, 1 BC is imaginary."])
(fset 'cursor-to-julian-calendar-date #[nil "½â┴¬ü┬─┼╞╟╚╔ «â╩╦!!!!\")ç" [european-calendar-style (day " " monthname " " year) (monthname " " day ", " year) calendar-date-display-form message "Julian date: %s" calendar-date-string calendar-julian-from-absolute calendar-absolute-from-gregorian calendar-cursor-to-date error "Cursor is not on a date!"] 7 "\
Show the Julian calendar equivalent of the date under the cursor." nil])
Last day of MONTH, YEAR on the French Revolutionary calendar.
The 13th month is not really a month, but the 5 (6 in leap years) day period of
`sansculottides' at the end of the year."])
(fset 'calendar-absolute-from-french #[(date) "└ !┬ !├ !S╟_╚W½à╔ѬòS╔ÑS╩Ñ[S╦ÑS╠Ñ[\\\\\\S═_╬\\\\\\\\+ç" [extract-calendar-month date extract-calendar-day extract-calendar-year year day month 365 20 4 100 400 4000 30 654414] 6 "\
Absolute date of French Revolutionary DATE.
The absolute date is the number of days elapsed since the (imaginary)
Gregorian date Sunday, December 31, 1 BC."])
(fset 'calendar-french-from-absolute #[(date) "┴W½à┬ëëEç├Z─Ñëë┬╚╔ëTE!Y½ì╔\\T¬g*\\\n╔┬╚╠\n\"\nE!V½ì╔\\T¬b*T╚╔\nE!SZ\nE,ç" [date 654415 0 654414 366 approx sum y calendar-absolute-from-french 1 year m french-calendar-last-day-of-month month day] 7 "\
Compute the French Revolutionary date (month day year) corresponding to
absolute DATE. The absolute date is the number of days elapsed since the
(imaginary) Gregorian date Sunday, December 31, 1 BC."])
(fset 'cursor-to-french-calendar-date #[nil "└┴┬ «â├─!!!╞!╚! ╩!╠W½à═╬!¬» ╧U½ì═╨SH#¬£═╥╙S╘ÑT╒\"S╘ªH SH%,ç" [calendar-french-from-absolute calendar-absolute-from-gregorian calendar-cursor-to-date error "Cursor is not on a date!" french-date extract-calendar-year y extract-calendar-month m extract-calendar-day d 1 message "Date is pre-French Revolution" 13 "Jour %s de l'Annee %d de la Revolution" french-calendar-special-days-array "Decade %s, %s de %s de l'Annee %d de la Revolution" make-string 10 73 french-calendar-day-name-array french-calendar-month-name-array] 6 "\
Show the French Revolutionary calendar equivalent of the date under the
cursor." nil])
(byte-code "└┬─╞ç" [["Vendemiaire" "Brumaire" "Frimaire" "Nivose" "Pluviose" "Ventose" "Germinal" "Floreal" "Prairial" "Messidor" "Thermidor" "Fructidor"] french-calendar-month-name-array ["Primidi" "Duodi" "Tridi" "Quartidi" "Quintidi" "Sextidi" "Septidi" "Octidi" "Nonidi" "Decadi"] french-calendar-day-name-array ["de la Vertu" "du Genie" "du Labour" "de la Raison" "de la Recompense" "de la Revolution"] french-calendar-special-days-array nil] 1)